package NiuKe;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;

/**
 * 22娘和33娘接到了小电视君的扭蛋任务：
 * 一共有两台扭蛋机，编号分别为扭蛋机2号和扭蛋机3号，22娘使用扭蛋机2号，33娘使用扭蛋机3号。
 * 扭蛋机都不需要投币，但有一项特殊能力：
 * 扭蛋机2号：如果塞x(x范围为>=0整数)个扭蛋进去，然后就可以扭到2x+1个
 * 扭蛋机3号：如果塞x(x范围为>=0整数)个扭蛋进去，然后就可以扭到2x+2个
 * 22娘和33娘手中没有扭蛋，需要你帮她们设计一个方案，两人“轮流扭”（谁先开始不限，扭到的蛋可以交给
 * 对方使用)，用“最少”的次数，使她们能够最后恰好扭到N个交给小电视君。
 */
public class NiuDan {
    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        int n = scanner.nextInt();
        ArrayList<Integer> result = new ArrayList<>();
        solution(10 , result);
        StringBuilder reStr = new StringBuilder(result.size());
        for (int i = result.size() - 1; i >= 0; i--) {
            reStr.append(result.get(i));
        }
        System.out.println(reStr);
    }
    public static void solution(int n ,List<Integer> result){
        if(n <= 0){
            return;
        }else {
            int v2 = (n - 1) % 2;
            int change = v2 == 0 ? 2 : 3;
            result.add(change);
            if (change == 2) {
                n = (n - 1) / 2;
            } else {
                n = (n - 2) / 2;
            }
            solution(n , result);
            return;
        }

    }
}
